#ifndef __vanjee_pointcloud_POINT_TYPES_H
#define __vanjee_pointcloud_POINT_TYPES_H



#include <pcl/point_types.h>
#include <pcl/point_cloud.h>


  struct PointXYZIR
  {
    PCL_ADD_POINT4D;                    // quad-word XYZ
    float intensity;                 ///< laser intensity reading
    uint16_t ring;                      ///< laser ring number
    double timestamp;                    // lidar time
    EIGEN_MAKE_ALIGNED_OPERATOR_NEW     // ensure proper alignment
  } EIGEN_ALIGN16;



POINT_CLOUD_REGISTER_POINT_STRUCT(PointXYZIR,
                                  (float, x, x)
                                  (float, y, y)
                                  (float, z, z)
                                  (float, intensity, intensity)
                                  (uint16_t, ring, ring)
                                  (double ,timestamp, timestamp)
                                  )

using PointType=PointXYZIR;
                                  
#endif // __vanjee_pointcloud_POINT_TYPES_H